/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package specs.novousuario;

import org.jbehave.core.annotations.Then;
import br.com.ffm.info.praticas.fiptwitter.FipTwitter;
import br.com.ffm.info.praticas.fiptwitter.User;

import org.jbehave.core.annotations.Given;
import org.jbehave.core.annotations.When;

import static org.junit.Assert.*;

/**
 *
 * @author jacksonjp
 */
public class NovaAlteracaoUsuario {
    private FipTwitter twitter;
    private Exception resultException;
    private String biografia;
    private String email;
    private String website;
    private FIPTwitterFacade facade;
    private User user;
    private Boolean exists;

    @Given("eu ja tenha cadastrado o usuario com o perfil login: $login senha: $senha nome: $nome biografia: $Capitão do BOPE-RJ email: $captnascimento@bope-rj.com.br website: $www.eusoufoda.com.br localização: $Rio de Janeiro-Brasil")
    public void givenUsuarioJaCadastrado(String login,String nome,String senha){
            try{
                facade = new FIPTwitterFacade();
                user = facade.NewUser(login,nome,senha);
	    } catch(Exception e){
                resultException = e;
	      }		
	}
    
    @When("edito a biografia passando o login $login a senha $senha e a nova biografia $Comandante geral do BOPE")
    public void whenEditoBiografiaLogin(String login,String biografia){
        assertNotNull(user);
        assertEquals(exists,user.getBiografia());
    }
    
    @When("edito o email passando o login $login a senha $senha e o novo email $comandantenascimento@bope-rj.com.br")
    public void whenEditoEmailLogin(String login,String email){
        assertNotNull(user);
        assertEquals(exists,user.getEmail());
    }
    
    @When("edito o website passando o login $login a senha $senha e o novo email $novowebsite")
    public void whenEditoWebsiteLogin(String login,String website){
        assertNotNull(user);
        assertEquals(exists,user.getWebsite());
    }
    
    @When("edito a localização passando o login $login a senha $senha e a nova localizacao $Cidade Maravilhosa")
    public void whenEditoLocalizacaoLogin(String login,String localizacao){
        assertNotNull(user);
        assertEquals(exists,user.getLocalizacao());
    }
    
    @Then("a biografia deve ser igual a $ComandantegeraldoBOPE")
    public void thenBiografiaIgual(String biografia){
        assertNotNull(user);
	assertEquals(null, user.getBiografia());
    }
    
    @Then("o email deve ser igual a $comandantenascimento@bope-rj.com.br")
    public void thenEmailIgual(String email){
        assertNotNull(user);
	assertEquals(null, user.getEmail());
    }
    
    @Then("o website deve ser igual a $www.eusoufodadenovo.com.br")
    public void thenWebsiteIgual(String website){
        assertNotNull(user);
	assertEquals(null, user.getWebsite());
    }
    
    @Then("a localização deve ser igual a $Cidade Maravilhosa")
    public void thenLocalizacaolIgual(String localizacao){
        assertNotNull(user);
	assertEquals(null, user.getLocalizacao());
    }
    
}   
   
    

